home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / Archives / ForCLI / cd108.lha / cd / cd.doc < prev    next >
Text File  |  1992-10-14  |  9KB  |  243 lines

  1. Format    : cd [Verzeichnis[*]] [-neu] [-ffilename]
  2.  
  3. Schablone : cd Verzeichnis/A
  4.  
  5. Bedeutung : Das Programm 'cd' funktioniert ähnlich wie 'cd'. Mit ihm kann
  6.         man das aktuelle Verzeichnis wechseln. Anders als bei 'cd' muß
  7.         man aber nicht stets den kompletten Pfad angeben. Es reicht,
  8.         wenn man ein Kürzel verwendet. Dies funktioniert auch über
  9.         Platten hinweg. Wer nur Disketten hat, kann sich mit einem
  10.         Trick auch nach dem Aufruf von 'cd' die richtige Diskette
  11.         anfordern lassen.
  12.  
  13.         Ein Beispiel:
  14.  
  15.         Man weiß, daß sich irgendwo auf den Partitionen seines Rechners
  16.         das Verzeichnis "vergeß_ich_nie" befindet. Man weiß aber
  17.         leider nicht mehr, wo das war. Statt nun mit einem 'find'-
  18.         Programm auf Suche zu gehen, tippt man
  19.  
  20.            cd vergeß_
  21.  
  22.         und schon ist man in dem gesuchten Verzeichnis.
  23.  
  24. Funktion  : 'cd' durchsucht natürlich nicht bei jedem Aufruf alle
  25.         verfügbaren Partitionen. Das würde viel zu lange dauern.
  26.         Statt dessen macht es sich einmal eine Übersicht über alle
  27.         Partitionen und schreibt diese in die Datei "s:cd.liste".
  28.  
  29.         Wenn Sie dann eine Zeile wie oben bereits im Beispiel gezeigt
  30.         eintippen, dann sucht 'cd' im der Datei "s:cd.liste" nach dem
  31.         eingegebenen Begriff. Findet es in einer Zeile den Begriff,
  32.         nimmt es die ganze Zeile und versucht sie zum aktuellen
  33.         Verzeichnis zu machen.
  34.  
  35.         Hier ein Ausschnitt aus "s:cd.liste":
  36.  
  37.            dh2:TeX-Texte/t
  38.            dh2:fontlib
  39.            dh2:config
  40.            dh2:UseNet+PD
  41.            dh2:UseNet+PD/Path
  42.            dh2:UseNet+PD/Dice
  43.            dh2:UseNet+PD/Dice/examples
  44.            dh2:UseNet+PD/Dice/dlib
  45.            dh2:UseNet+PD/Dice/vergeß_ich_nie
  46.            dh2:UseNet+PD/Dice/dutil
  47.            dh2:UseNet+PD/Dice/include
  48.  
  49.         In der drittletzten Zeile steht das gesuchte Verzeichnis. 'cd'
  50.         nimmt nun diese Zeile und führt ein
  51.  
  52.            cd dh2:UseNet+PD/Dice/vergeß_ich_nie
  53.  
  54.         aus. 'cd' nimmt also immer das erste Verzichnis, das es in
  55.         "s:cd.liste" findet und wählt dieses an. Wenn weitere
  56.         Verzeichnisse auf das gleiche Suchwort passen, müssen Sie das
  57.         Suchwort verlängern oder verändern. Um zum Beispiel das
  58.         "vergeß_ich_nie" anzuwählen, können Sie auch
  59.  
  60.            cd ce/ver
  61.  
  62.         eingeben.
  63.  
  64.         Damit Sie nicht ständig zwischen zwei Programmen wie 'c:cd' und
  65.         'cd' hin - und herwechseln müssen, kann 'cd' die Funktion von
  66.         'c:cd' vollständig übernehmen. Sie können also auch mit 'cd'
  67.         ganz normal Verzeichnisse anwählen. Dabei gilt folgende
  68.         Reihenfolge, mit der 'cd' versucht, das Verzeichnis zu wechseln:
  69.  
  70.            1. wie angegeben im aktuellen Verzeichnis
  71.            2. als Wortanfang im aktuellen oder angegebenen Verzeichnis
  72.            3. in der Liste in "s:cd.liste"
  73.  
  74.         Fall 1:
  75.         -------
  76.            cd sys:Utilities
  77.  
  78.         Fall 2:
  79.         -------
  80.            cd sys:Util
  81.  
  82.            ... dies entspricht der Folge ...
  83.  
  84.            cd sys:
  85.            cd Util
  86.  
  87.         Fall 3:
  88.         -------
  89.            cd Util
  90.  
  91. Version 1.03 : cd wertet nun die Environment-Variable HOME aus.
  92.         Diese kann 'local' oder 'global' sein (in 2.0 gibt es da einen
  93.         Unterschied). Wenn man in sein HOME-Verzeichnis wechseln möchte,
  94.         gibt man nur
  95.  
  96.            cd ~
  97.  
  98.         an, und schon befindet man sich in dem Verzeichnis, dessen Name in
  99.         der Variablen HOME steht. Diese kann wie folgt gesetzt werden:
  100.  
  101.            setenv HOME "work:c-compiler/Sourcen"
  102.  
  103.         oder auch
  104.  
  105.            set HOME "work:c-compiler/Sourcen"     (nur in 2.0 möglich)
  106.  
  107.         Letzteres ist besonders sinnvoll, da die Variable HOME dann nur
  108.         local in der Shell festgelegt ist. Jede Shell kann damit ein eigenes
  109.         HOME-Verzeichnis besitzen.
  110.  
  111.         Für MSDOS oder UNIX-Freaks:
  112.  
  113.            cd ..
  114.  
  115.         führt zu einem Wechsel in das übergeordnete Verzeichnis
  116.  
  117. Erster Start : Bevor man 'cd' benutzen kann, muß man ihm sagen, welche
  118.         Partitionen und Disketten 'cd' beim ersten Start durchsuchen
  119.         soll. Dies geschieht in der Datei "s:cd_drivelist". Hier
  120.         können Sie Zeile für Zeile Laufwerke, Verzeichnisse und auch
  121.         Diskettennamen angeben, die 'cd' durchgucken soll. Sie darf
  122.         keine Leerzeilen enthalten. In jeder Zeile hat lediglich ein
  123.         Laufwerk oder ein Verzeichnis zu stehen. Bei Verzeichnissen
  124.         muß ein '/' das letzte Zeichen sein.
  125.  
  126.         Ein Beispiel
  127.  
  128.            dh0:
  129.            dh1:
  130.            dh2:Texte/
  131.  
  132.         Beim Aufruf von 'cd' werden dann nur die beiden Partitionen
  133.         in "dh0:", "dh1:" und die Verzeichnisse in "dh2:Texte"
  134.         berücksichtigt. Verzeichnisse in "dh2:" wird 'cd' dann nicht
  135.         finden.
  136.  
  137. Optionen  : Wenn Sie lange Zeit 'cd' benutzen und viele Verzeichnisse auf
  138.         Ihren Partitionen entstanden sind, die noch nicht in der Liste
  139.         stehen, müssen Sie diese notgedrungen aktualisieren. Hierzu
  140.         gibt es mehrere Möglichkeiten.
  141.  
  142.         Zum einen läßt sich 'cd' mit der Option '-neu'
  143.         (kleingeschrieben) aufrufen. Dann erzeugt es eine neue Datei
  144.         "s:cd.liste". Dieses Verfahren ist am sichersten. Es
  145.         funktioniert immer, dauert aber auch am längsten.
  146.  
  147.         Zum anderen kann man sich eine Script-Datei schreiben, die
  148.         jedes neue Verzeichnis automatisch an "s:cd.liste" anfügt,
  149.         wenn man ein Verzeichnis anlegt. Anbei findet sich eine solche
  150.         Script-Datei. Sie heißt "mkdir". Probleme gibt es mit dieser
  151.         Methode, wenn man Verzeichnisse löscht und wenn neue
  152.         Verzeichnisse nicht von "mkdir", sondern beispielsweise von
  153.         "copy" angelegt werden. Es empfiehlt sich also, von Zeit zu
  154.         Zeit "cd -neu" aufzurufen.
  155.  
  156.         Manchmal kann es nützlich sein, nicht nur eine Liste mit allen
  157.         Verzeichnissen zu haben, sondern deren mehrere. So ist es
  158.         sicher sinnvoll, eine Liste mit allen Verzeichnissen der
  159.         vorhandenen PD-Disketten anzulegen. Ein Aufruf wie
  160.  
  161.            cd Diskx
  162.  
  163.         führt dann zu der Aufforderung, die "AmigaLibDisk158"
  164.         einzulegen. Die Option "-f" erlaubt die Angabe einer
  165.         alternativen Datei mit Pfaden. Hierzu ist natürlich jeweils
  166.         die Option mit dem Dateinamen anzugeben. Da dies eher
  167.         unpraktisch viel zu tippen ist, sollten Sie einen Alias
  168.         vereinbaren. Zum Beispiel:
  169.  
  170.            alias pd cd [] -fs:cd-pd-liste
  171.  
  172.  
  173.  
  174.         Ruft man 'cd' mit einem '?' auf, gibt es eine Zeile aus, wie
  175.         es aufgerufen werden kann.
  176.  
  177. Version 1.01 :  Der Fehler beim Wechseln des Verzeichnisses mit Kürzel
  178.         "relativ rückwärts" - Richtung Wurzel also - ist behoben.
  179.         Fortan sind Wechsel wie
  180.  
  181.            cd /sy
  182.  
  183.         von Erfolg gekrönt, wenn es im übergeordneten Verzeichnis
  184.         ein Verzeichnis gibt, das mit den Buchstaben "sy" beginnt.
  185.  
  186. Version 1.02 :  Alle Buchstaben der Verzeichnisnamen in "cd.liste" werden
  187.         in Großbuchstaben umgewandelt. Dies hat einen Geschwindig-
  188.         keitsgewinn von 15 Prozent zur Folge, wenn in dieser Datei
  189.         gesucht werden muß.
  190.  
  191. Version 1.03 :  cd kann nun auch mit dem Parameter '~' aufgerufen werden.
  192.         Ist dies der Fall, sucht er nach der Environment-Variable
  193.         HOME und wechselt in das Verzeichnis, welches in dieser
  194.         Variable steht.
  195.  
  196.         Ab Betriebssystemversion 2.0 gibt es lokale und globale
  197.         Environment-Variablen. cd wertet zuerst die jeweils für
  198.         eine Shell lokale, und wenn diese nicht vorhanden ist, die
  199.         globale Variable HOME aus. Damit kann jede Shell ein eigene
  200.         HOME-Verzeichnis besitzten.
  201.  
  202.         cd kennt einen weiteren Parameter. Es reagiert auf ".."
  203.         als Ersatz für den "/".
  204.  
  205. Version 1.04 :  cd hatte Probleme beim Durchsuchen von Verzeichnissen, die
  206.         als Netz gemountet waren (nur wichtig bei der Benutzung
  207.         von PNET: oder DNET:). Dies ist nun nicht mehr der Fall.
  208.  
  209. Version 1.05 :  Fehler behoben, der nur auftrat, wenn man im Root-Verzeichnis
  210.         einer Diskette oder Volumes war, die per Handler angesprochen
  211.         wurde. Dann setzte cd den Namen im Prompt einer Shell nicht
  212.         (nicht nutzungseinschränkend, nur lästig).
  213.  
  214. Version 1.06 :  Link-Support soweit eingebaut, daß cd nun keine Links
  215.         verfolgt, wenn er eine neue Liste erstellt. Ein cd auf ein
  216.         Link geht nach wie vor.
  217.  
  218.         Früher hieß 'cd' 'nd'. Die Namensänderung hat zur Folge, daß
  219.         alle Zusatzfiles nun ebenfalls mit cd statt mit nd beginnen.
  220.  
  221. Version 1.07 :  Nun kann man 'cd' auch mehrfach nacheinander mit dem gleichen
  222.         Begriff aufrufen. 'cd' sucht dann "weiter". Es setzt also in
  223.         der Suchdatei wieder auf. Hierzu verwendet es die lokalen
  224.         Environment-Variablen 'CD_INDEX' und 'CD_LAST'. In CD_INDEX
  225.         speichert er die Position, an welcher er in der Suchdatei
  226.         gerade war und in CD_LAST das zuletzt gesuchte Wort.
  227.  
  228.         Da hier lokale Variablen verwendet werden, funktioniert dies
  229.         Verfahren nur unter der Workbench 2.04 oder höher.
  230.  
  231.         Außerdem hat sich das Dateiformat geändert. Alle Namen enden
  232.         nun mit einem '/' und einer '\0' -- nicht mehr mit einem Return.
  233.         Dies habe ich deswegen geändert, damit auch der MFR die
  234.         'cd.liste' nutzen kann. In der momentanen Version ist er nämlich
  235.         nicht in der Lage Softlinks zu verfolgen. Ein Abbruch ist die
  236.         Folge.
  237.  
  238. Version 1.08 :  'cd' benutzt ab OS2.0 nun die Betriebssystem-Funktion
  239.         'SetCurrentDirName()', um den Prompt auf den Stand zu bringen.
  240.         Dies hat den Vorteil, daß es nun nicht mehr zu Ungereimtheiten
  241.         bei Pfaden über 80 Zeichen kommt. Allerdings schneidet diese
  242.         Funktion alle Pfade ab, die mehr als 80 Zeichen enthalten.
  243.